package com.xjl.javacore.code.intexample;

import java.util.Map;

/**
 * java基本的数据类型（开发效率优先//不是线程安全的）
 *
 * Java 8个基础类型（primitive types）他们各自有各自的包装类：
     boolean
     byte
     short
     char
     int
     float
     double
     long
 这种缓存机制并不是只有Integer才有，同样存在于其他的一些包装类，比如：
     Boolean，缓存了true/false对应实例，确切说，只会返回两个常量实例Boolean.TRUE/FALSE。
     Short，同样是缓存了-128到127之间的数值。
     Byte，数值有限，所以全部都被缓存。
 Character，缓存范围'\u0000' 到 '\u007F'。
 * @author xiaojinlu1990@163.com
 * date 2020-01-17
 *
 * 将基本数据类型封装成对象的好处是：

1）、在对象中可以定义更多的功能方法操作该数据。例如：基本数据类型和字符串直接的转换。
2）、编码过程中只接收对象的情况，例如List中只存入对象，不能存入基本数据类型。

3、使用场景
大部分的情况下，这两种类型没有太大得区别。根据以上两点的分析，基本类型的存取速度会更快，对象中有更多功能方法来操作数据，要根据实际需要定义属性。

借鉴网上学生成绩的例子，没来考试，成绩是0还是null，如果你觉得是0就用int，如果你认为是null，就用Integer。

 *
 * 总结
 *  int             integer
 *  有缓存           新对象
 *  不可以泛型       可以泛型
 *  0                null
 *
 *
 *
 * 参考
 * https://www.cnblogs.com/tartis/p/9288020.html
 * https://blog.csdn.net/shdhhfhj/article/details/103864197
 */
public class IntExample {

    public static void main(String[] args) {
        Integer demo = 0;
    }
}
